﻿using System;
using System.Collections.Generic;
using System.Security.Principal;
using ProjectFootball.Foundation.ViewModels;

namespace ProjectFootball.Foundation.Interfaces
{
    public interface IApprovableViewModel<TEntityV>
        where TEntityV : IApprovableEntity
    {
        IPrincipal User { get; set; }
        Guid PrimaryKey { get; set; }
        DateTime ViewDate { get; set; }
        Guid HeaderKey { get; set; }
        Byte[] RowVersion { get; set; }
        DateTime EffectiveFrom { get; set; }
        DateTime EffectiveTo { get; set; }
        TEntityV VersionEntity { get; set; }

        IList<BreadcrumbViewModel> Breadcrumbs { get; set; }
    }
}
